#include <iostream>
#include "numSquares.h"
#include "MinStack.h"
#include "isValid.h"
#include "dailyTemperatures.h"
#include "findTargetSumWays.h"
#include "inorderTraversal.h"
#include "duplicate.h"
#include "getDuplication.h"
#include "findNumberIn2DArray.h"
#include "rebuildTree.h"
#include "maxProfit.h"
#include "fastsort.h"
#include "maxProductCutting.h"
#include "sqrt.h"
#include "maxValue.h"
#include "containsDuplicate.h"
#include "intersection.h"
#include "isHappy.h"
#include "isAnagram.h"
#include "isIsomorphic.h"
#include <queue>
#include "frequencySort.h"
#include "twoSum.h"
#include "fourSum.h"
#include "MyQueue.h"
#include "MyStack.h"
using namespace std;

int main() {
//    vector<vector<int>>nums = {{1,10,3,8},{12,2,9,6},{5,7,4,11},{3,7,16,5}};
//    vector<vector<int>>nums1 = {{1,3,1},{1,5,1},{4,2,1}};
//    vector<vector<int>>nums2 = {{1,2,5},{3,2,1}};
//    vector<int>a = {1,2,2,1};
//    vector<int>b = {2,2};
//    vector<int>a = {4,9,5};
//    vector<int>b = {9,4,9,8,4};
//    vector<int>a = {1,2};
//    vector<int>b = {1,1};
//    vector<pair<char,int>>res;
//    vector<int>s = {-1,-2,-3,-4,-5};
//    vector<int>s1 = {3,2,4};
//    vector<int>v = {1,0,-1,0,-2,2};
    vector<int>v = {-3,-1,0,2,4,5};
    MyStack s;
    s.push(1);
    s.push(2);
    s.push(3);
    cout<<s.pop()<<endl;
    cout<<s.pop()<<endl;
    cout<<s.pop()<<endl;
    cout<<boolalpha<<s.empty()<<endl;
//    vector<int>v = {-1,0,1,2,-1,-4};
//    vector<int>v = {0,0,0,0};
//    vector<int>v = {0,0,0};
    vector<vector<int>>result = fourSum(v,0);
    for(auto e:result){
        for(auto ee:e){
            cout<<ee<<" ";
        }
        cout<<"\n";
    }
    return 0;
}
